With the increased usage of digital cameras (especially those included with smartphones or other devices), storage of digital photographs poses significant challenges for personal devices and for “cloud” storage services available through the Internet. In particular, digital cameras in smartphones and other mobile computing devices have dramatically increased the number of digital images that are captured, shared and stored, since such devices are carried by large numbers of users in their daily activities. At the same time, newer digital cameras use sensors that yield higher-resolution images. The higher-resolution images have more sample values per image and tend to have higher storage cost per image.
Engineers use compression (also called source coding, source encoding, or simply coding or encoding) to reduce the bit rate of digital images. Compression decreases the cost of storing and transmitting image information by converting the information into a lower bit rate form. Compression can be lossless or lossy. Lossless compression typically reduces bit rate and does not hurt image quality. On the other hand, in lossy compression, bit rate reduction tends to be more significant, at the cost of reduction in image quality. Decompression (also called decoding) reconstructs a version of the original information from the compressed form. A “codec” is an encoder/decoder system.
Since the early 1990s, various image codec standards have been adopted, including the JPEG standard (ITU-T T.81 or ISO/IEC 10918-1), JPEG 2000 standard (ISO/IEC 15444), and JPEG XR standard (ITU-T T.832 or ISO/IEC 29199-2). Digital images can also be processed using intra-picture encoding and decoding for a video codec standard, such as the H.264/AVC standard (ITU-T H.264, MPEG-4 AVC or ISO/IEC 14496-10) or H.265/HEVC standard (ITU-T H.265 or ISO/IEC 23008-2). A codec standard typically defines options for the syntax of an encoded data bitstream, detailing parameters in the bitstream when particular features are used in encoding and decoding. In many cases, a codec standard also provides details about the decoding operations a decoder should perform to achieve conforming results in decoding. Aside from codec standards, various proprietary codec formats (such as VP8 and VP9) define other options for the syntax of an encoded data bitstream and corresponding decoding operations.
Thus, image compression can reduce the storage cost for digital photographs, but most conventional image encoding approaches do not exploit correlations that exist between different images. For example, consider a series of digital photographs captured using burst mode capture or a set of digital photographs in a photograph album. The images in the series or album may be highly correlated, yet most image encoding approaches only consider each image by itself during compression.
Some existing “image set” compression approaches exploit inter-image redundancy between images to reduce bit rate. A few of these encoding approaches even enable lossless compression. Such approaches typically compress “raw” input digital images, as opposed to previously encoded digital images, in order to achieve significant reduction in storage cost. When existing lossy image set compression approaches are applied to reconstructed versions of previously encoded digital images, the approaches rarely reduce bit rate unless image quality also suffers. Applying existing lossless image set compression approaches to reconstructed versions of previously encoded digital images (attempting to reduce storage cost without further reducing image quality) usually increases bit rate instead of reducing it. Thus, in some scenarios, existing image set compression approaches fail to provide efficient performance when re-encoding previously encoded digital images.